#ifndef __CIPHER__
#define __CIPHER__

#define JZAES_IOC_MAGIC  'A'
#define IOCTL_AES_GET_PBUFF					_IO(JZAES_IOC_MAGIC, 110)
#define IOCTL_AES_SET_PARA					_IO(JZAES_IOC_MAGIC, 111)
#define IOCTL_AES_START_EN_PROCESSING		_IO(JZAES_IOC_MAGIC, 112)
#define IOCTL_AES_START_DE_PROCESSING		_IO(JZAES_IOC_MAGIC, 113)

#define STATUS_FREE		0
#define STATUS_USED		1

struct aes_para {
	unsigned int mem_p;
	unsigned int status;
	unsigned int aeskey[4];
	unsigned int aesiv[4];
	unsigned int src_addr_p;
	unsigned char *src_addr_v;
	unsigned int dst_addr_p;
	unsigned char *dst_addr_v;
	unsigned int enAlg;
	unsigned int enBitWidth;
	unsigned int enWorkMode;
	unsigned int enKeyLen;
	unsigned int dataLen;
};

#endif
